Obsidian-Digital-Garden 中文 URL 跳转问题

我在使用 Obsidian-Digital-Garden 插件,处理中文 URL 时,遇到内部链接解析错误的问题,URL 会将链接中的中文忽略掉,导致跳转失败。

通过研究,插件由两部分组成:

通过分析,我发现 HTML 的内部跳转 URL 实际上是在 oleeskild/digitalgarden 中动态处理的。因此在仓库中通过一行代码修复:

.eleventy.js:

// let permalink = `/notes/${slugify(fileName)}`;
let permalink = `/notes/${fileName}`;

在这个插件中,提供一个 slugify 功能,用于产生友好的 URL,需要插件的两部分相互配合:

因此,需要内链 URL 与导出页面的文件名匹配,才能内部跳转成功。然而所使用的 slugify 库,它不支持中文。

尽管插件提供了一个 slugify 开关,但该开关只对 obsidian-digital-garden 生效,oleeskild/digitalgarden 代码中只有 slugify 逻辑。这样,就算在 0.0 Obsidian 介绍 中关闭 slugify 开关,仍然有问题(导出文件与笔记目录、文件名一致,而内链仍然是残缺的 slugify)。

因此,我上面的修复代码,需要搭配 slugify 开关一同使用。这样,不管是导出页面,还是内链,都遵循与笔记目录、文件名一致。


本文作者:Maeiee

本文链接:Obsidian-Digital-Garden 中文 URL 跳转问题

版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!


喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!